<?php

class Application_Form_ArticleEx extends Zend_Form
{

    public function init()
    {
        /* Form Elements & Other Definitions Here ... */
        $view = Zend_Layout::getMvcInstance()->getView();
        
        // create id element
        $id = $this->createElement("hidden","id");
        $id->setDecorators(array("ViewHelper"));
        $this->addElement($id);
        
        // create article_name element
        $article_name = $this->createElement("text","article_name");
        $article_name->setLabel("Tên bài viết")
                     ->setRequired()
                     ->addValidators(array(
                        array("NotEmpty",false,array("messages"=>array('isEmpty'=>"Tên bài viết không để trống."))),
                     ))
                     ->setAttrib("size","100");            
        $this->addElement($article_name);
        
        
        // create description element
        $description = $this->createElement("textarea","article_description");
        $description->setLabel("Mô tả bài viết")
                    ->setAttrib("rows",3)
                    ->setAttrib("style","width: 99%");
        $this->addElement($description);
        
        // create content element
        $content = $this->createElement("textarea","article_content");
        $content->setLabel("Nội dung bài viết")
                ->setAttribs(array(
                    'class' => "ckeditor",
                    'rows' => 30
                ));
        $this->addElement($content);
        
        
        // create image element
        $image = $this->createElement("file","article_image");
        $image->setLabel("Hình ảnh bài viết")
              ->addValidators(array(
                'Size' => array(
                    'min'=>2*1024, 
                    'max'=>4*1024*1024, 
                    'messages'=>array(
                        'fileSizeTooBig'=>"Kích thước của hình '%value%' phải nhỏ hơn '%max%'",
                        'fileSizeTooSmall'=>"Kích thước của hình '%value%' phải lớn hơn '%min%'"
                    )
                ),
                'Extension' => array(
                    "jpg,jpeg,png,gif", 
                    'messages'=>array(
                        'fileExtensionFalse'=>"Hình '%value%' không đúng dạng quy định(.jpg|.jpeg|.png|.gif)."
                    )
                ),
            ));
        $this->addElement($image);
        
        
        /*
        //create thumbnail image
        $thumbs = $this->createElement("image","thumbs");
        $thumbs->setAttribs(array(
                    "style"=>"cursor:default;",
                    "onclick"=>"return false",
                    "height" => 200,
                    "src" => $view->baseUrl("templates/admin/img/no_photo_available.png"),
                    "class"=>"thumbs"
               ));
        $this->addElement($thumbs);
        */
        // create categories_id element
        $category = $this->createElement("select","categories_id");
        $category->setLabel("Thuộc danh mục")
                 ->setMultiOptions(array(
                    "Chọn danh mục..."
                 ));
        $this->addElement($category);
        
        //create crawler element
        $crawler = $this->createElement("text","article_crawler");
        $crawler->setLabel("Nguồn thu")
                ->setAttrib("class","mini");
        $this->addElement($crawler);
        
        //create tags element
        $tags = $this->createElement("text","article_tags");
        $tags->setLabel("Tags")
             ->setAttrib("class","mini");
        $this->addElement($tags);
                
        // create submit button
        $submit = $this->createElement("submit","submit");
        $submit->setLabel("Lưu")
               ->setAttrib("class","btn btn-teal");
        $this->addElement($submit);
        
        // create submit button
        $reset = $this->createElement("reset","reset");
        $reset->setLabel("Nhập lại")
              ->setAttrib("class","btn btn-orange");
        $this->addElement($reset);
        
        // create submit button
        $link = $view->url(array(
            'module'=>"admin",
            'controller'=>"article",
            'action'=>"index"
        ));
        $cancel = $this->createElement("button","cancel");
        $cancel->setLabel("Quay lại")
               ->setAttrib("class","btn btn-red")
               ->setAttrib("onclick","window.location='$link'");
        $this->addElement($cancel);
    }


}

